<!DOCTYPE html>
<html>
<head>
    <meta charset='utf-8'>
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <link rel="shortcut icon" type="image/x-icon" href="../favicon.ico"/>
    <title>历史版本下载 jetbrick-template</title>

    <link href="../assets/css/application.min.css" rel="stylesheet" type="text/css"/>

    <!--[if lt IE 9]><script src="../assets/js/html5shiv.js"></script><![endif]-->
    <script type="text/javascript" src="../assets/js/application.min.js"></script>
</head>

<body>
<a href="https://github.com/subchen/jetbrick-template/" target="_blank">
    <img src="../assets/images/forkme_right_orange.png" alt="Fork me on GitHub" class="fork-me-on-github">
</a>

<div class="jb-topbar">
    <div class="container">
        <a href="http://subchen.github.io/"><img src="../assets/images/logo-mini.png"/></a>
        <!--
        <ul class="menubar">
            <li><a href="">commons</a></li>
            <li><a href="">webmvc</a></li>
            <li><a href="">template</a></li>
            <li><a href="">orm</a></li>
            <li><a href="">widget</a></li>
            <li><a href="">javadoc-chm</a></li>
        </ul>
        -->
        <div class="pull-right" style="color:#fff;line-height:40px;font-size:16px;padding-right:20px">QQ 交流圈：310491655</div>
    </div>
</div>

<div class="jb-banner">
    <div class="container">
        <a href="http://subchen.github.io/jetbrick-template/index.html">
            <img src="../assets/images/jetbrick-template-logo.png" class="pull-left" />
        </a>
        <ul class="description">
            <li>1. 全新一代 Java 模板引擎</li>
            <li>2. 具有高性能、高扩展性</li>
            <li>3. 完美替代 JSP, Velocity 等引擎模板</li>
        </ul>
        <a href="download/jetbrick-template-1.2.3.zip" class="download-button">
            <img src="../assets/images/download.png"/>
            <span>jetbrick-template-1.2.3.zip<br/>2014-03-10</span>
        </a>
    </div>
</div>

<div class="container">
    <div class="jb-section">
        <ul class="tabs">
            <li><a href="overview.html">简介</a></li>
            <li><a href="download.html">下载</a></li>
            <li><a href="userguide.html">开发指南</a></li>
            <li><a href="config.html">配置指南</a></li>
            <li><a href="syntax.html">语法指南</a></li>
            <li><a href="integrate.html">Web 框架集成</a></li>
            <!--
            <li><a href="example.html">例子</a></li>
            -->
            <li><a href="faq.html">FAQ</a></li>
            <li><a href="about.html">关于</a></li>
        </ul>
    </div>
</div>

<div class="container">
    <div class="announcement">
        <a href="download.html#version">2014-03-10：jetbrick-template-1.2.3 正式版已发布，欢迎下载。</a>
    </div>
</div>

<div class="container">


    <div class="markdown">

<!-- markdown body begin -->

    <p><a name="version"></a></p>
<h1><a name="x1304924747"></a><span>1 最新版本 Latest Version</span></h1> 
<table> 
 <thead> 
  <tr> 
   <th>时间 </th> 
   <th>版本 </th> 
   <th>二进制包 </th> 
   <th>完整包 </th> 
   <th>更新历史 </th> 
  </tr> 
 </thead> 
 <tbody> 
  <tr> 
   <td>2014-03-10 </td> 
   <td>1.2.3 </td> 
   <td><a href="download/jetbrick-template-1.2.3.zip">jetbrick-template-1.2.3.zip</a></td> 
   <td><a href="download/jetbrick-template-1.2.3-all.zip">jetbrick-template-1.2.3-all.zip</a></td> 
   <td><a href="#release_notes_1_2_3">更新历史</a></td> 
  </tr> 
  <tr> 
   <td>2014-02-23 </td> 
   <td>1.2.2 </td> 
   <td><a href="download/jetbrick-template-1.2.2.zip">jetbrick-template-1.2.2.zip</a></td> 
   <td><a href="download/jetbrick-template-1.2.2-all.zip">jetbrick-template-1.2.2-all.zip</a></td> 
   <td><a href="#release_notes_1_2_2">更新历史</a></td> 
  </tr> 
  <tr> 
   <td>2014-01-26 </td> 
   <td>1.2.1 </td> 
   <td><a href="download/jetbrick-template-1.2.1.zip">jetbrick-template-1.2.1.zip</a></td> 
   <td><a href="download/jetbrick-template-1.2.1-all.zip">jetbrick-template-1.2.1-all.zip</a></td> 
   <td><a href="#release_notes_1_2_1">更新历史</a></td> 
  </tr> 
  <tr> 
   <td>2014-01-05 </td> 
   <td>1.2.0 </td> 
   <td><a href="download/jetbrick-template-1.2.0.zip">jetbrick-template-1.2.0.zip</a></td> 
   <td><a href="download/jetbrick-template-1.2.0-all.zip">jetbrick-template-1.2.0-all.zip</a></td> 
   <td><a href="#release_notes_1_2_0">更新历史</a></td> 
  </tr> 
  <tr> 
   <td>2013-12-22 </td> 
   <td>1.1.3 </td> 
   <td><a href="download/jetbrick-template-1.1.3.zip">jetbrick-template-1.1.3.zip</a></td> 
   <td><a href="download/jetbrick-template-1.1.3-all.zip">jetbrick-template-1.1.3-all.zip</a></td> 
   <td><a href="#release_notes_1_1_3">更新历史</a></td> 
  </tr> 
  <tr> 
   <td>2013-12-15 </td> 
   <td>1.1.2 </td> 
   <td><a href="download/jetbrick-template-1.1.2.zip">jetbrick-template-1.1.2.zip</a></td> 
   <td><a href="download/jetbrick-template-1.1.2-all.zip">jetbrick-template-1.1.2-all.zip</a></td> 
   <td><a href="#release_notes_1_1_2">更新历史</a></td> 
  </tr> 
  <tr> 
   <td>2013-12-08 </td> 
   <td>1.1.1 </td> 
   <td><a href="download/jetbrick-template-1.1.1.zip">jetbrick-template-1.1.1.zip</a></td> 
   <td><a href="download/jetbrick-template-1.1.1-all.zip">jetbrick-template-1.1.1-all.zip</a></td> 
   <td><a href="#release_notes_1_1_1">更新历史</a></td> 
  </tr> 
  <tr> 
   <td>2013-12-02 </td> 
   <td>1.1.0 </td> 
   <td><a href="download/jetbrick-template-1.1.0.zip">jetbrick-template-1.1.0.zip</a></td> 
   <td><a href="download/jetbrick-template-1.1.0-all.zip">jetbrick-template-1.1.0-all.zip</a></td> 
   <td><a href="#release_notes_1_1_0">更新历史</a></td> 
  </tr> 
  <tr> 
   <td>2013-11-22 </td> 
   <td>1.0.2 </td> 
   <td><a href="download/jetbrick-template-1.0.2.zip">jetbrick-template-1.0.2.zip</a> </td> 
   <td><a href="download/jetbrick-template-1.0.2-all.zip">jetbrick-template-1.0.2-all.zip</a> </td> 
   <td><a href="#release_notes_1_0_2">更新历史</a> </td> 
  </tr> 
  <tr> 
   <td>2013-11-20 </td> 
   <td>1.0.1 </td> 
   <td><a href="download/jetbrick-template-1.0.1.zip">jetbrick-template-1.0.1.zip</a> </td> 
   <td><a href="download/jetbrick-template-1.0.1-all.zip">jetbrick-template-1.0.1-all.zip</a> </td> 
   <td><a href="#release_notes_1_0_1">更新历史</a> </td> 
  </tr> 
  <tr> 
   <td>2013-11-18 </td> 
   <td>1.0.0 </td> 
   <td><a href="download/jetbrick-template-1.0.0.zip">jetbrick-template-1.0.0.zip</a> </td> 
   <td><a href="download/jetbrick-template-1.0.0-all.zip">jetbrick-template-1.0.0-all.zip</a> </td> 
   <td><a href="#release_notes_1_0_0">更新历史</a> </td> 
  </tr> 
 </tbody> 
</table>
<h1><a name="x887846512"></a><span>2 更新历史 Release Notes</span></h1>
<p><a name="release_notes_1_2_3"></a><br /><strong>Version 1.2.3 (2014-03-10)</strong></p> 
<ul> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/82">#82 支持自定义的全局变量</a></li> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/83">#83 增加 Eclipse Java Compiler 支持</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/80">#80 WildFly 8.0.0 autoscan/compile error.</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/81">#81 resin-3.1.13 compile issue</a></li> 
</ul>
<p><a name="release_notes_1_2_2"></a><br /><strong>Version 1.2.2 (2014-02-23)</strong></p> 
<ul> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/78">#78 扩展 import.packages， 支持子包的导入</a></li> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/79">#79 支持全局安全调用配置(SafeCall)</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/69">#69 在weblogic用war部署，编译class有问题</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/76">#76 如果默认的 jetbrick-template.properties 配置文件不存在，会报错</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/77">#77 如果 template 放在 java 目录下，编译或出错</a></li> 
</ul>
<p><a name="release_notes_1_2_1"></a><br /><strong>Version 1.2.1 (2014-01-26)</strong></p> 
<ul> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/72">#72 JetTagContext/JetPageContext 请添加一个接口</a></li> 
 <li>[增强] <a href="https://github.com/subchen/jetbrick-template/issues/73">#73 关于扩展方法/函数/标签 加载失败时的处理方式</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/75">#75 ${query?.pageNum.asDefault(1)} 出错</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/74">#74 ClassLoaderUtils.loadClass() 如果 Class 不存在，提示信息不正确</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/70">#70 关于https协议默认端口的问题</a></li> 
</ul>
<p><a name="release_notes_1_2_0"></a><br /><strong>Version 1.2.0 (2014-01-05)</strong></p> 
<ul> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/38">#38 增加默认的 #tag cache() 实现模板局部缓存功能</a></li> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/49">#49 增加模板预编译工具/选项</a></li> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/54">#54 增加安全管理器：黑白名单</a></li> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/62">#62 在 Web 环境中使用 jetx 时候，建议增加一个隐藏变量</a></li> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/63">#63 对 Array/List/Map 的 [] 访问，增加安全调用</a></li> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/64">#64 Spell error in JetAnnoations Class name, Should be JetAnnotations.</a></li> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/65">#65 给 #for 指令内部对象增加 for.odd 和 for.even 支持.</a></li> 
</ul>
<p><a name="release_notes_1_1_3"></a><br /><strong>Version 1.1.3 (2013-12-22)</strong></p> 
<ul> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/50">#50 增加 Jodd Madvoc 的集成支持</a></li> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/56">#56 增加 MultipathResourceLoader，支持多个模板路径</a></li> 
 <li>[增强] <a href="https://github.com/subchen/jetbrick-template/issues/52">#52 增强 asDate() 方法，默认支持更多的格式，比如 ISO8601, RFC 822</a></li> 
 <li>[增强] <a href="https://github.com/subchen/jetbrick-template/issues/55">#55 对#for指令的增强建议</a></li> 
 <li>[增强] <a href="https://github.com/subchen/jetbrick-template/issues/57">#57 增强 template.path 和 compile.path 的配置功能</a></li> 
 <li>[增强] <a href="https://github.com/subchen/jetbrick-template/issues/58">#58 为JetEngineFactoryBean提供构造注入方式的spring配置</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/53">#53 engine.createTemplate(&quot;你好&quot;) 编译失败</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/59">#59 JetUtils.asBoolean() 对 Collection 和 Map 的判断有误</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/60">#60 #if (obj == null) 报错，invalid token null</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/61">#61 import.variables 如果存在多个泛型类型定义会报错</a></li> 
</ul>
<p><a name="release_notes_1_1_2"></a><br /><strong>Version 1.1.2 (2013-12-15)</strong></p> 
<ul> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/32">#32 增加 annotation 自动扫描查找 Methods / Functions / Tags</a></li> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/43">#43 新增 JDT 编译方法，以应对没有 JDK 的环境</a></li> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/51">#51 增加 #tag default_block(name) 默认 layout block 的实现</a></li> 
 <li>[改进] <a href="https://github.com/subchen/jetbrick-template/issues/48">#48 compile.path 配置路径移除 jetx_x_x_x 的路径后缀</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/44">#44 启用 trim.directive.comments 的时候，出现 NullPointerException</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/45">#45 #tag 中的 #include 输出的内容位置不正确</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/46">#46 通过 classpath 加载 jar 中模板，出现 ResourceNotFoundException</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/47">#47 tomcat 目录中带空格，template 编译失败</a></li> 
</ul>
<p><a name="release_notes_1_1_1"></a><br /><strong>Version 1.1.1 (2013-12-08)</strong></p> 
<ul> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/28">#28 增加 asDefault() 方法扩展，支持设置默认值</a></li> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/30">#30 增强 #put，一次支持多个变量的传递</a></li> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/31">#31 增加 Spring FactoryBean 的集成支持</a></li> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/35">#35 增加 #tag block(name) 默认实现，配合 #include 实现多个内容块的 layout</a></li> 
 <li>[增强] <a href="https://github.com/subchen/jetbrick-template/issues/39">#39 增强 #tag layout 功能，允许添加自定义参数给 layout 模板</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/20">#20 The column of error line is wrong when the line contains '\t'</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/24">#24 三元表达式如果使用 Interface 或者 Primitive Class 作为选项，会出现 NullPointerException</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/25">#25 #if #else #end 语句后面貌似丢了一个换行</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/27">#27 #set指令创建double型字面变量时，小数点后面跟0则不能通过编译</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/29">#29 如果没有 #if 只有独立的 #else 或者 #end，没有报错，且剩余内容会被省略掉</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/33">#33 属性安全调用问题？</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/34">#34 拼写错误: #tag layout 中的实现用的是 bodyContext, 文档中描述的是 bodyContent，不一致</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/37">#37 throw NullPointerException when method parameter is null.</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/40">#40 #form 和 #for 指令冲突，编译失败</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/41">#41 从 request uri 中获取模板路径存在问题，会出现404错误</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/42">#42 include() 函数和 #tag layout() 传的 Map 参数出现编译错误</a></li> 
</ul>
<p><a name="release_notes_1_1_0"></a><br /><strong>Version 1.1.0 (2013-12-02)</strong></p> 
<ul> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/12">#12 增加自定义 Tag 功能</a></li> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/13">#13 增加 #macro 宏定义</a></li> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/15">#15 增加对类的静态字段和静态方法的直接访问</a></li> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/18">#18 增加默认的 layout Tag 实现</a></li> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/19">#19 与Nutz集成，实现JetTemplateView (Thanks wendal1985@gmail.com)</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/14">#14 如果运算符的操作数的返回值是 void, 那么就会出现编译错误</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/20">#20 The column of error line is wrong when the line contains '\t'</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/21">#21 NumberUtils.format(123) should be &quot;123.00&quot;</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/22">#22 对于 ${bean.property}，优先使用 getXXX()</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/23">#23 Fixed request uri in JetTemplateServlet/JetTemplateFilter</a></li> 
</ul>
<p><a name="release_notes_1_0_2"></a><br /><strong>Version 1.0.2 (2013-11-22)</strong></p> 
<ul> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/10">#10 增加选项：compile.always 第一次访问模板强制编译</a></li> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/16">#16 允许 import 一个单独的 Class, 避免出现冲突</a></li> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/17">#17 增加 iterator(start,stop,step) 代替 range(...) 函数</a></li> 
 <li>[增强] <a href="https://github.com/subchen/jetbrick-template/issues/9">#9 如果 compile.path 对应的目录非法或者没有权限不可写, 应该启动Engine时就报错</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/8">#8 jetx 模板生成的 java 文件名可能会产生冲突</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/11">#11 模板的路径如有使用 &quot;../../file.jetx&quot; 那么就会访问到 template.path 路径的外面</a></li> 
</ul>
<p><a name="release_notes_1_0_1"></a><br /><strong>Version 1.0.1 (2013-11-20)</strong></p> 
<ul> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/1">#1 支持 Servlet 2.x</a></li> 
 <li>[新增] <a href="https://github.com/subchen/jetbrick-template/issues/4">#4 增加指令注释支持，如： 
   <!-- #if (...) --> 增强对可视化编辑器的友好度</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/2">#2 trim.directive.line 选项，如果指令两边为非空格，也会被 trim</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/3">#3 compile.debug 默认应该为 false</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/6">#6 JDK 6 can't load the template class compiled using JDK 7.</a></li> 
 <li>[修复] <a href="https://github.com/subchen/jetbrick-template/issues/7">#7 JetTemplateServlet 和 JetTemplateFilter 默认可能输出错误的 contentType.</a></li> 
</ul>
<p><a name="release_notes_1_0_0"></a><br /><strong>Version 1.0.0 (2013-11-18)</strong></p> 
<ul> 
 <li>支持类似于 Velocity 的多种指令</li> 
 <li>支持静态编译</li> 
 <li>支持编译缓存</li> 
 <li>支持热加载</li> 
 <li>支持类型推导</li> 
 <li>支持泛型</li> 
 <li>支持可变参数方法调用</li> 
 <li>支持方法重载</li> 
 <li>支持类似于 Groovy 的方法扩展</li> 
 <li>支持函数扩展</li> 
 <li>First public release</li> 
</ul>

<!-- markdown body end -->

    </div>
</div>

<div class="container">
    <div class="jb-footer">
        Copyright 2010-2014 Guoqiang Chen. All rights reserved.
        <br/>subchen&#64;gmail.com, QQ 交流圈：310491655
    </div>
</div>

<style type="text/css">
#cnzz_stat_icon_1000210720 {
	display: none;
}
</style>
<script type="text/javascript">
var cnzz_protocol = (("https:" == document.location.protocol) ? " https://" : " http://");
document.write(unescape("%3Cspan id='cnzz_stat_icon_1000210720'%3E%3C/span%3E%3Cscript src='" + cnzz_protocol + "s22.cnzz.com/z_stat.php%3Fid%3D1000210720' type='text/javascript'%3E%3C/script%3E"));
</script>



</body>
</html>
